In print shop environments, digital vector data is generally expressed in a Page Description Language (PDL) data format. Examples of PDLs include, Hewlett-Packard's Printer Control Language® (PCL), Adobe's Portable Document Format® (PDF), or Adobe's PostScript® (PS). In print shop environments, digital image data are typically represented as JPEG, TIFF, and/or like data formats (such data formats can also be present in a print job). Prior to printing or otherwise presenting image data that is in any one of these digital data formats, vector data and image data must be rasterized. Rasterization or “raster image processing” (RIPing) is the process of translating digital vector and image data into bit-mapped data or raster bits for rendering by a printer or display device.
Efficient print job turn-around time is of paramount importance for successful print shop operations. In view of this, a print job can be divided into multiple partitions for rasterization by a pipeline of multiple RIPing engines (RIP engines). In such a scenario, each RIP engine in the pipeline RIPs a respective partition of the multiple partitions. Since multiple RIP engines RIP the print job in parallel, the print job is rasterized more efficiently than had only one RIP engine been used. Although this technique generally results in a faster print-job turn-around time, this technique is also substantially problematic due to existing pipeline configuration limitations.
One problem, for example, is that print shops are substantially limited with respect to which types of RIP engines can be used in a particular pipeline. If a print shop has N RIP engines of first manufacture and M RIP engines of second manufacture, the print shop generally cannot mix and match RIP engines from the first and second manufacturers to generate a pipeline without possibly introducing inconsistencies into the rasterized product. This is because RIP engine vendors, of which there are many, typically employ proprietary RIPing algorithms, software versions, font types, font versions, and so on, to rasterize PDL. For purposes of discussion RIP engines that implement different RIPing algorithms/resources, etc., with respect to one another are heterogeneous with respect to one another.
In print shop environments where multiple RIP engines can be utilized for RIPing jobs, the print shop may want to organize the RIP engines into various groupings. This grouping of a collection of RIP engines will be referred to as a pipeline.
Employing a particular RIPing algorithm, font type and/or font version, etc., on a set of data will generally result in diverse rasterization product as compared to had a different RIPing algorithm, font type and/or font version, etc., been used to RIP the data. To avoid undesired imaging defects (e.g., anomalous color shifts, font mismatch, etc.) in a printed document due to such diverse rasterization results, when a pipeline is to include multiple RIP engines, existing pipeline configuration techniques require all RIP engines in the pipeline to be of same software/hardware version and manufacture. In this manner, conventional techniques ensure that each partition of a print job will be RIP'd by a RIP engine of same manufacture and software/hardware version.
Although a pipeline configured with multiple homogeneous RIP engines ensures a quality end-product, such a technique substantially limits a print shop's ability to meet anticipated and unforeseen print shop workflow needs by not being able to flexibly configure pipelines with available heterogeneous RIPing resources.
The following systems and procedures address these and other limitations of existing techniques that utilize multiple RIP engines to rasterize a print job.